如何使用正则表达式在Pandas中过滤行?

您所在的位置:网站首页 pandas dataframe 过滤行 如何使用正则表达式在Pandas中过滤行?

如何使用正则表达式在Pandas中过滤行?

2024-05-27 10:53| 来源: 网络整理| 查看: 265

如何使用正则表达式在Pandas中过滤行?

正则表达式(regex)是定义搜索模式的字符序列。要使用正则表达式在Pandas中过滤行,我们可以使用 str.match() 方法。

更多Pandas相关文章,请阅读:Pandas 教程

步骤 创建可变大小的二维异构表格数据, df 。 打印输入的DataFrame, df 。 为表达式初始化一个变量 regex 。提供一个字符串值作为regex,例如,字符串 ‘J.*’ 将过滤所有以字母’J’开头的条目。 使用 df. column_name.str.match(regex)根据提供的regex过滤给定列名中的所有条目。 示例 import pandas as pd df = pd.DataFrame( dict( name=['John', 'Jacob', 'Tom', 'Tim', 'Ally'], marks=[89, 23, 100, 56, 90], subjects=["Math", "Physics", "Chemistry", "Biology", "English"] ) ) print "输入DataFrame如下:\n", df regex = 'J.*' print "应用后", regex, "DataFrame如下:\n", df[df.name.str.match(regex)] regex = 'A.*' print "应用后", regex, "DataFrame如下:\n", df[df.name.str.match(regex)] 输出 输入DataFrame如下: name marks subjects 0 John 89 Math 1 Jacob 23 Physics 2 Tom 100 Chemistry 3 Tim 56 Biology 4 Ally 90 English 应用后 J.* DataFrame如下: name marks subjects 0 John 89 Math 1 Jacob 23 Physics 应用后 A.* DataFrame如下: name marks subjects 4 Ally 90 English


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3